0 追蹤者

類別 yii\console\ExitCode

繼承關係yii\console\ExitCode
自版本起可用2.0.13
原始碼 https://github.com/yiisoft/yii2/blob/master/framework/console/ExitCode.php

此類別為定義主控台命令的結束代碼提供常數。

結束代碼遵循 FreeBSD sysexits(3) 手冊頁中定義的代碼。

這些常數可用於主控台控制器中,例如這樣

public function actionIndex()
{
    if (!$this->isAllowedToPerformAction()) {
         $this->stderr('Error: ' . ExitCode::getReason(ExitCode::NOPERM));
         return ExitCode::NOPERM;
    }

    // do something

    return ExitCode::OK;
}

另請參閱 https://man.openbsd.org/sysexits

公開屬性

隱藏繼承的屬性

屬性 類型 描述 定義於
$reasons 陣列 結束代碼的原因描述地圖。 yii\console\ExitCode

公開方法

隱藏繼承的方法

方法 描述 定義於
getReason() 傳回給定結束代碼的簡短原因文字。 yii\console\ExitCode

常數

隱藏繼承的常數

常數 描述 定義於
CANTCREAT 73 無法建立(使用者指定的)輸出檔案。 yii\console\ExitCode
CONFIG 78 在未配置或錯誤配置的狀態中發現某些東西。 yii\console\ExitCode
DATAERR 65 輸入資料在某些方面不正確。這應該僅用於使用者的資料,而不是系統檔案。 yii\console\ExitCode
IOERR 74 在某些檔案上執行 I/O 時發生錯誤。 yii\console\ExitCode
NOHOST 68 指定的主機不存在。這用於郵件地址或網路請求。 yii\console\ExitCode
NOINPUT 66 輸入檔案(非系統檔案)不存在或不可讀。這也可能包括類似「沒有訊息」的錯誤給郵件程式(如果它關心捕獲它)。 yii\console\ExitCode
NOPERM 77 您沒有足夠的權限執行此操作。這不適用於檔案系統問題,檔案系統問題應使用 NOINPUT 或 CANTCREAT,而是用於更高等級的權限。 yii\console\ExitCode
NOUSER 67 指定的使用者不存在。這可以用於郵件地址或遠端登入。 yii\console\ExitCode
OK 0 命令已成功完成。 yii\console\ExitCode
OSERR 71 偵測到作業系統錯誤。這旨在用於諸如 `無法 fork'、`無法建立管道' 之類的事情。它包括諸如 getuid 傳回 passwd 檔案中不存在的使用者之類的事情。 yii\console\ExitCode
OSFILE 72 某些系統檔案(例如,/etc/passwd、/var/run/utx.active 等)不存在、無法開啟或存在某種錯誤(例如,語法錯誤)。 yii\console\ExitCode
PROTOCOL 76 遠端系統在協定交換期間傳回了「不可能」的東西。 yii\console\ExitCode
SOFTWARE 70 偵測到內部軟體錯誤。這應盡可能限制為非作業系統相關的錯誤。 yii\console\ExitCode
TEMPFAIL 75 暫時性失敗,表示某些實際上不是錯誤的東西。在 sendmail 中,這表示郵件程式(例如)無法建立連線,並且應稍後重新嘗試請求。 yii\console\ExitCode
UNAVAILABLE 69 服務不可用。如果支援程式或檔案不存在,則可能會發生這種情況。當您想要執行的某些操作不起作用,但您不知道為什麼時,也可以將其用作包羅萬象的訊息。 yii\console\ExitCode
UNSPECIFIED_ERROR 1 命令結束時出現錯誤代碼,但沒有說明錯誤的任何資訊。 yii\console\ExitCode
USAGE 64 命令使用不正確,例如,參數數量錯誤、標誌錯誤、參數中的語法錯誤或其他任何錯誤。 yii\console\ExitCode

屬性詳細資訊

隱藏繼承的屬性

$reasons public static property

結束代碼的原因描述地圖。

public static array $reasons = [
    
self::OK => '成功',
    
self::UNSPECIFIED_ERROR => '未指定的錯誤',
    
self::USAGE => '不正確的使用方式、引數或選項錯誤',
    
self::DATAERR => '輸入資料錯誤',
    
self::NOINPUT => '找不到輸入檔案或無法讀取',
    
self::NOUSER => '找不到使用者',
    
self::NOHOST => '找不到主機',
    
self::UNAVAILABLE => '必要的服務不可用',
    
self::SOFTWARE => '內部錯誤',
    
self::OSERR => '執行系統呼叫或使用作業系統服務時發生錯誤',
    
self::OSFILE => '存取系統檔案時發生錯誤',
    
self::CANTCREAT => '無法建立輸出檔案',
    
self::IOERR => 'I/O 錯誤',
    
self::TEMPFAIL => '暫時性失敗',
    
self::PROTOCOL => '非預期的遠端服務行為',
    
self::NOPERM => '權限不足',
    
self::CONFIG => '設定錯誤',
]

方法詳情

隱藏繼承的方法

getReason() public static 方法

傳回給定結束代碼的簡短原因文字。

此方法使用 $reasons 來判斷退出碼的原因。

public static string getReason ( $exitCode )
$exitCode 整數

此類別中定義的常數之一。

返回 字串

原因文字,或如果程式碼未在 $reasons 中列出,則為 "Unknown exit code"

                public static function getReason($exitCode)
{
    return isset(static::$reasons[$exitCode]) ? static::$reasons[$exitCode] : 'Unknown exit code';
}